The field of the disclosure relates generally to systems and methods for use in performing a task by at least one processing engine.
Processors are generally known to perform tasks through use of threads provided by operating systems associated with the processors. The thread performs tasks as generated by the operating system or from a queue of tasks to be performed to accomplish one or more calculations, operations, processes, actions and/or procedures in the computing environment.
Often, the operating systems provide multiple threads, which are assigned various different tasks to be performed thereby. Known operating systems assign tasks to threads to perform the tasks. In various implementations, a task may be dependent on one or more other tasks, or subtasks. When the task is assigned to the thread, the task occupies the thread until all necessary dependent tasks and/or subtasks are complete, so that the thread may perform that task. When a task is separated into multiple tasks, which are themselves separated into multiple tasks, one or more tasks may be assigned to threads for an extended period of time, while the dependent tasks are performed. The time, in which the task or subtask is assigned to a thread, and waiting for other tasks to be completed, often results in inefficient use of the processor, and in some instances, thread starvation.